package com.cy.ppj.service.comm;

import com.cy.ppj.model.Result;

import org.springframework.web.multipart.MultipartFile;

import java.util.Map;

/**
 * 文件上传
 *
 * @author: tanyilin
 * @create: 2018年9月20日 下午6:17:17
 */
public interface FileService {

	/**
	 * 上传文件到oss，私有bucket：FILE_PTAH
	 * 
	 * @param file
	 * @return
	 */
    Result upload(MultipartFile file);

    /**
	 * 上传文件到oss，公共读的bucket：FULL_FILE_PTAH
	 * 
	 * @param file
	 * @return
	 */
    Result uploadToFullBucket(MultipartFile file);

    /**
     * 上传文件到oss，马先生商城的bucket：MALL_BUCKET_NAME
     * @param file
     * @param directory
     * @param fileName
     * @return com.cy.ppj.model.Result<java.util.Map<java.lang.String,java.lang.String>>
     */
	Result<Map<String, String>> uploadToMallBucket(MultipartFile file, String directory, String fileName);
    
    /**
	 * 获取文件访问链接
	 * 
	 * @param key
	 * @return
	 */
	String getFileUrl(String key, String bucketName);
}
